import { Icon } from '@iconify/react';
import styled from 'styled-components';

import type { IconProps } from '@iconify/react';
import type { SVGProps } from 'react';

interface Props extends IconProps {
  size?: IconProps['width'];
}
export default function Iconify({ icon, size = '1em', className = '', ...other }: Props) {
  return (
    <StyledIconify className="anticon">
      <Icon icon={icon} width={size} height={size} className={`m-auto ${className}`} {...other} />
    </StyledIconify>
  );
}

const StyledIconify = styled.div`
  display: inline-flex;
  vertical-align: middle;
  svg {
    display: inline-block;
  }
`;

export function HeroiconsTruckSolid(props: SVGProps<SVGSVGElement>) {
  return (
    <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24" {...props}>
      <g fill="currentColor">
        <path d="M3.375 4.5C2.339 4.5 1.5 5.34 1.5 6.375V13.5h12V6.375c0-1.036-.84-1.875-1.875-1.875zM13.5 15h-12v2.625c0 1.035.84 1.875 1.875 1.875h.375a3 3 0 1 1 6 0h3a.75.75 0 0 0 .75-.75z" />
        <path d="M8.25 19.5a1.5 1.5 0 1 0-3 0a1.5 1.5 0 0 0 3 0m7.5-12.75a.75.75 0 0 0-.75.75v11.25q0 .13.042.248a3 3 0 0 1 5.958.464c.853-.175 1.522-.935 1.464-1.883a18.66 18.66 0 0 0-3.732-10.104a1.84 1.84 0 0 0-1.47-.725z" />
        <path d="M19.5 19.5a1.5 1.5 0 1 0-3 0a1.5 1.5 0 0 0 3 0" />
      </g>
    </svg>
  );
}
